aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/tools/mass test client/TestClient.build
blob: 803377b35248283949f06ed68a21b3d2b85869fb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
<?xml version="1.0"?>

<project
  name="libsecondlife"
  default="build">

  <!-- global framework settings -->
  <property
    name="target.framework"
    value="${framework::get-target-framework()}" />
  <property
    name="assembly.dir"
    value="${framework::get-assembly-directory(target.framework)}" />

  <!-- global project settings -->
  <xmlpeek
    file="../../../libsecondlife.build"
    xpath="/project/property[@name = 'project.version']/@value"
    property="project.version" />
  <property
     name="build.number"
     value="${math::abs(math::floor(timespan::get-total-days(datetime::now()
     - datetime::parse('01/01/2002'))))}" />
  <property
    name="assembly"
    value="TestClient"/>
  <property
    name="bin_dir"
    value="../../../bin" />

  <!-- default configuration -->
  <property
    name="project.config"
    value="debug" /> <!-- debug|release -->

  <!-- named configurations -->
  <target
    name="init"
    description="Initializes build properties">
    <call target="${project.config}" />
  </target>

  <target
    name="debug"
    description="configures a debug build">
    <property
      name="build.debug"
      value="true" />
    <property
      name="package.name"
      value="${project::get-name()}-${project.version}-${project.config}" />
    <property
      name="assembly.configuration"
      value="${framework::get-target-framework()}.${platform::get-name()} [${project.config}]" />
  </target>

  <target
    name="release"
    description="configures a release build">
    <property
      name="project.config"
      value="release" />
    <property
      name="build.debug"
      value="false" />
    <property
      name="package.name"
      value="${project::get-name()}-${project.version}" />
    <property
      name="assembly.configuration"
      value="${framework::get-target-framework()}.${platform::get-name()}" />
  </target>

  <!-- build tasks -->
  <target
    name="build"
    depends="init"
    description="Builds the binaries for the current configuration">
    <echo message="Build Directory is ${bin_dir}/" />
    <mkdir
      dir="${bin_dir}"
      failonerror="false" />
    <csc
      target="exe"
      debug="${build.debug}"
      output="${bin_dir}/${assembly}.exe">
      <sources failonempty="true">
	      <include name="*.cs" />
	      <include name="Commands/**.cs" />
	      <exclude name="Commands/Communication/TtsCommand.cs" />
      </sources>
      <references basedir="${bin_dir}/">
        <include name="libsecondlife.dll"/>
        <include name="openjpegnet.dll"/>
      </references>
    </csc>
  </target>

  <target
    name="build-dll"
    description="Builds libsecondlife dll">
    <nant
      buildfile="../../libsecondlife-cs/libsecondlife.build"
      target="${project.config} build"/>
  </target>

  <target
    name="clean"
    depends="init"
    description="Deletes the current configuration">
    <delete failonerror="false">
      <fileset basedir="${bin_dir}/">
        <include name="${assembly}.exe" />
        <include name="${assembly}.pdb" />
        <include name="**/${assembly}.*.resources" />
      </fileset>
    </delete>
  </target>

  <target
    name="*"
    description="Handles unknown targets">
    <echo message="skip" />
  </target>
</project>